package cn.itcast.hotel.service;

import cn.itcast.hotel.common.PageResult;
import cn.itcast.hotel.dto.HotelPageQueryDTO;
import cn.itcast.hotel.pojo.Hotel;
import cn.itcast.hotel.vo.HotelVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * 酒店服务
 *
 * @author liudo
 * @date 2023/08/15
 */
public interface HotelService extends IService<Hotel> {
    /**
     * 按查询列出
     *
     * @param hotelPageQueryDTO 酒店页面查询d去
     * @return {@link PageResult}<{@link HotelVO}>
     */
    PageResult<HotelVO> listByQuery(HotelPageQueryDTO hotelPageQueryDTO);

    /**
     * 过滤器
     *
     * @param hotelPageQueryDTO 酒店页面查询d去
     * @return {@link Map}<{@link String}, {@link List}<{@link String}>>
     */
    Map<String, List<String>> filters(HotelPageQueryDTO hotelPageQueryDTO);

    /**
     * 建议
     *
     * @param key 钥匙
     * @return {@link List}<{@link String}>
     */
    List<String> suggestion(String key);
}
